<?php
defined('SYSPATH') OR die('No Direct Script Access');
session_name('curriculo');
@session_start();

include "application/classes/validator/ValidadorDeFormularioDeEndereco.php";
include "application/classes/model/Endereco.php";
include "application/classes/visualizacao/FormularioDeEndereco.php";

Class Controller_GerenciadorDeEndereco extends Controller_TemplatePadrao
{

	public $errors = array();
	public $camposDoFormulario;
	public $sheets = array('reset' => 'screen', 'main' => 'screen');
	public $formularioDeEndereco;


	function action_index(){		
		$_SESSION['pagina_corrente'] = "endereco";
		if(isset($_SESSION['endereco'])){
			$endereco =  unserialize($_SESSION['endereco']);
			$this->formularioDeEndereco = new FormularioDeEndereco($endereco);
		}
		else{
			$this->formularioDeEndereco = new FormularioDeEndereco();
		}
		 
		$this->carregarFormulario();

	}

	public function carregarFormulario(){
		$ko3_inner               = array();
		$ko3                     = array();
		$this->template->title   = 'Psicopuc WWW Ver. 3.0';
		View::set_global('x', 'Esta e uma variavel global');
		$ko3_inner['content']    = 'Dados(Exemplo)';
		$ko3['content']          = 'Dados2(Exemplo)';
		$this->template->header  = View::factory('blocks/pagina_header', $ko3_inner)
								  ->render();
		$this->template->menu    = View::factory('blocks/menu_formulario')
	    						  ->render();
	    $this->template->footer  = View::factory('blocks/pagina_footer')
	                              ->render();						  
		$this->template->content = View::factory('Formularios/FormularioDeEndereco', $ko3)
		->bind('errors', $this->errors)
		->bind('camposDoFormulario', $this->camposDoFormulario)
		->bind('formularioDeEndereco', $this->formularioDeEndereco);
	}


	public function action_validarForm(){

		$validator = new ValidadorDeFormularioDeEndereco();
		$validator->verificarCamposValidos();
		$this->formularioDeEndereco = new FormularioDeEndereco();


		$acao = $_POST['form_button'];

		if($acao == "Proximo"){

			if(!$validator->isFormularioValido()){
				$this->errors = $validator->getErros();
				$this->camposDoFormulario = $validator->getCamposDoFormulario();
				$this->formularioDeEndereco->recarregarDadosDoFormulario();
				$this->carregarFormulario();

			}
			else{
				$idEndereco = $_POST['IdEndereco'];
				$rua = $_POST['Endereco'];
				$numero = $_POST['NumeroDaCasa'];
				$cidade = $_POST['Cidade'];
				$estado = $_POST['Estado'];
				$bairro = $_POST['Bairro'];
				$cep = $_POST['Cep'];
				$pais = $_POST['Pais'];
				$complemento = $_POST['Complemento'];
				$endereco = new Endereco($rua, $numero, $cidade, $estado, $bairro, $cep, $pais, $complemento);
				$endereco->setIdEndereco($idEndereco);
				$_SESSION['endereco'] = serialize($endereco);
				//Elemento de visualização que junto ao $_SESSION['pagina_corrente'] define se a página
				//já foi validade e assim aparecerá no menu topo para seleção 
				$_SESSION['endereco_validado'] = true;
				echo "<meta http-equiv=Refresh content=0;url=".url::site()."GerenciadorDeDeficiencia>";
			}
		}
		else if($acao == "Voltar"){
			$idEndereco = $_POST['IdEndereco'];
			$rua = $_POST['Endereco'];
			$numero = $_POST['NumeroDaCasa'];
			$cidade = $_POST['Cidade'];
			$estado = $_POST['Estado'];
			$bairro = $_POST['Bairro'];
			$cep = $_POST['Cep'];
			$pais = $_POST['Pais'];
			$complemento = $_POST['Complemento'];
			$endereco = new Endereco($rua, $numero, $cidade, $estado, $bairro, $cep, $pais, $complemento);
			$endereco->setIdEndereco($idEndereco);
			$_SESSION['endereco'] = serialize($endereco);
			echo "<meta http-equiv=Refresh content=0;url=".url::site()."GerenciadorDeCandidato>";
		}
	}
}

?>